package model;

import java.util.Vector;

/**
 * 
 * @author uade
 *
 */
public class Conjunto extends Ropa {
	
	private float descuento;
	private Vector<Prenda> prendas;

	
	/**
	 * 
	 * @param nombre
	 * @param codigo
	 * @param descuento
	 * @param ropas
	 */
	public Conjunto(int conjuntoId,String nombre, float descuento) {
		super(nombre, conjuntoId);
		this.setDescuento(descuento);
		this.prendas = new Vector<Prenda>();
	}
	
	public Conjunto(int conjuntoId, String nombre, float descuento, Vector<Prenda> prendas){
		super(nombre,conjuntoId);
		this.setDescuento(descuento);
		this.setPrendas(prendas);
	}
	
	
	
	
	/**
	 * Sumar el precio de todas las ropas
	 */
	public float getPrecio() {	
		return this.precio;
	}

	/**
	 * Setters & Getters
	 */
	
	/**
	 * 
	 * @return
	 */
	public float getDescuento() {
		return descuento;
	}

	/**
	 * 
	 * @param descuento
	 */
	public void setDescuento(float descuento) {
		this.descuento = descuento;
	}

	/**
	 * 
	 * @return
	 */
	public Vector<Prenda> getPrendas() {
		return prendas;
	}

	/**
	 * 
	 * @param ropas
	 */
	public void setPrendas(Vector<Prenda> prendas) {
		this.prendas = prendas;
	}
	
	public void setPrecio(float precio)
	{
		this.precio = precio;
	}
	@Override
	public float calcularPrecioRopa() {
		
		//this.setPrenda(persistence.APConjunto.getPrendasDeConjunto(getCodigo()));
		float precio = 0;
		if(this.prendas!=null)
		{
			for(int i = 0; i<prendas.size(); i++)
			{
				precio += prendas.elementAt(i).getPrecio();
			}
			this.setPrecio(precio-precio*this.getDescuento()/100);
			return this.getPrecio();
		}	
		return 0;

	}

	public boolean agregarPrendaAConjunto(Prenda prenda)
	{
		if(buscarPrenda(prenda.getCodigo())==null)
		{
			if(prenda.getEstado()==1){
				prendas.add(prenda);
				return true;
			}
		}
		return false;
	}
	
	public Ropa buscarPrenda(int prendaId)
	{
		for(int i = 0; i<prendas.size(); i++)
		{
			if (prendas.elementAt(i).getCodigo()==prendaId)
			{
				return prendas.elementAt(i);
			}
		}
		return null;	
	}


}
